package cn.qiguai.sphapi.service;

import cn.qiguai.sphapi.controller.request.PageSearchGoodsParam;
import cn.qiguai.sphapi.domain.Goods;
import cn.qiguai.sphapi.domain.GoodsCategory;
import cn.qiguai.sphapi.domain.GoodsCategoryAttrs;
import cn.qiguai.sphapi.controller.response.Page;

import java.util.List;

public interface GoodsService {
	/**
	 * 获取所有商品分类
	 * @return list
	 */
	List<GoodsCategory> getCategoryList();

	/**
	 * 分页搜索商品
	 * @param param 分页搜索商品参数
	 * @return data
	 */
	Page<Goods> pageSearchGoods(PageSearchGoodsParam param);

	/**
	 * 获取分类属性
	 * @param categoryId 分类id
	 * @param keyword 关键词
	 * @return 分类属性
	 */
	List<GoodsCategoryAttrs> getCategoryAttrs(Integer categoryId, String keyword);

	/**
	 * 获取商品详细信息
	 * @param goodsId 商品id
	 * @return Goods
	 */
	Goods getGoodsInfo(int goodsId);
}
